/*******************************************************************
 *   > File Name: key.c
 *   > Author: fly
 *   > Mail: 1358326274@qq.com
 *   > Create Time: 2019年10月30日 星期三 17时36分28秒
 ******************************************************************/
#include "common.h"

#define GPH0CON     0xE0200C00
#define GPH0DAT     0xE0200C04
#define GPH2CON     0xE0200C40
#define GPH2DAT     0xE0200C44

#define rGPH0CON    (*(volatile unsigned int *)GPH0CON)
#define rGPH0DAT    (*(volatile unsigned int *)GPH0DAT)
#define rGPH2CON    (*(volatile unsigned int *)GPH2CON)
#define rGPH2DAT    (*(volatile unsigned int *)GPH2DAT)

void key_init(void)
{
    // 设置GPHxCON寄存器，设置为输入模式
    // GPH0CON的bit8～15全部设置为0，即可
    rGPH0CON &= ~(0xFF<<8);
    // GPH2CON的bit0～15全部设置为0，即可
    rGPH2CON &= ~(0xFFFF<<0);
}

unsigned int leftKey_value(void)
{
    return (rGPH0DAT& (0x1<<2));//0:表示按下
}
unsigned int downKey_value(void)
{
    return (rGPH0DAT& (0x1<<3));
}
unsigned int upKey_value(void)
{   
    return (rGPH2DAT& (0x1<<0));
}
unsigned int rightKey_value(void)
{
    return (rGPH2DAT& (0x1<<1));
}
unsigned int backKey_value(void)
{
    return (rGPH2DAT& (0x1<<2));
}
unsigned int menuKey_value(void)
{
    return (rGPH2DAT& (0x1<<3));
}

